﻿using MyMumsPC.DataModel;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Text;

namespace PennApps
{
    public enum ResourceIntensity
    {
        High,
        Normal,
        Low

    }
    public class ProcessPerformanceInformation : INotifyPropertyChanged
    {
        public string ProcessName { get; set; }
        public string MemoryUsage { get; set; }
        public string CPUUsage { get; set; }
        public string TotalIOCount { get; set; }
        public string ModuleLocation { get; set; }
        public ResourceIntensity ResourceIntensity
        {
            get
            {
                return ProcessResourceIntensity.CalculateResourceIntensity(this);
            }
        }
        public event PropertyChangedEventHandler PropertyChanged;
    }

    public class ProcessPerformanceInformationExtended : ProcessPerformanceInformation
    {
        public ResourceIntensity ResourceIntensity
        {
            get
            {
                return ProcessResourceIntensity.CalculateResourceIntensity(this);
            }
        }
    }
}
